// 云对象教程: https://uniapp.dcloud.net.cn/uniCloud/cloud-obj
// jsdoc语法提示教程：https://ask.dcloud.net.cn/docs/#//ask.dcloud.net.cn/article/129
const db = uniCloud.database();
const dbCmd = db.command
module.exports = {
	_before: function () { // 通用预处理器

	},
	/**
	 * 退单操作
	 * @param {string} order_no 购买订单编号
	 * @returns {object} 返回值描述
	 */
	exOrder:async function({order_no}){
		let now = new Date().getTime() //获取当前时间戳
		let res = await db.collection("wolf-profit-order").where({
			orderid:order_no
		}).field({
			uid:true,
			pid:true,
			orderid:true,
			price:true,
			commit:true,
			type:true,
		}).get()
		console.log("res",res)
		await db.collection("wolf-pay-order").where({
			order_no:order_no
		}).update({
			status:2
		})
		
		let data = res.data
		for(let i=0;i<data.length; i++){
			console.log(data[i].pid)
			let uRes = await db.collection("uni-id-users").doc(data[i].pid).update({
				money:dbCmd.inc(-data[i].price)
			})
			console.log("uRes",uRes)
			data[i].type = 0
			data[i].create_time = now
			delete data[i]._id
		}
		return await db.collection("wolf-profit-order").add(data)
	}
	/**
	 * method1方法描述
	 * @param {string} param1 参数1描述
	 * @returns {object} 返回值描述
	 */
	/* 
	method1(param1) {
		// 参数校验，如无参数则不需要
		if (!param1) {
			return {
				errCode: 'PARAM_IS_NULL',
				errMsg: '参数不能为空'
			}
		}
		// 业务逻辑
		
		// 返回结果
		return {
			param1 //请根据实际需要返回值
		}
	}
	*/
}
